<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>WebSocket</title>

</head>
<body>
<h3>hello socket</h3>
<p>sendUserId<div><input id="sendUserId" type="text"></div>
<p>recvUserId<div><input id="recvUserId" type="text"></div>
<p>msg<div><input id="msg" type="text"></div>
<p>操作:<button><a onclick="openSocket()">开启socket</a></button>
<p>【操作】：<button><a onclick="sendMessage()">发送消息</a></button>
<p>【操作】：<button><a onclick="sendMessages()">群发</a></button>
</body>
<script>

    let socket;
    function openSocket() {
        if(typeof(WebSocket) == "undefined") {
            console.log("您的浏览器不支持WebSocket");
        }else{
            console.log("您的浏览器支持WebSocket");
            //实现化WebSocket对象，指定要连接的服务器地址与端口  建立连接
            let sendUserId = document.getElementById('sendUserId').value;
            let socketUrl="ws://192.168.1.108:8081/websocket/"+sendUserId;
            console.log(socketUrl);
            if(socket!=null){
                socket.close();
                socket=null;
            }
            socket = new WebSocket(socketUrl);
            //打开事件
            socket.onopen = function() {
                console.log("websocket已打开");
                //socket.send("这是来自客户端的消息" + location.href + new Date());
            };
            //获得消息事件
            socket.onmessage = function(msg) {
                let serverMsg = "收到服务端信息：" + msg.data;
                console.log(serverMsg);
                //发现消息进入    开始处理前端触发逻辑
            };
            //关闭事件
            socket.onclose = function() {
                console.log("websocket已关闭");
            };
            //发生了错误事件
            socket.onerror = function() {
                console.log("websocket发生了错误");
            }
        }
    }
    function sendMessage() {
        if(typeof(WebSocket) == "undefined") {
            console.log("您的浏览器不支持WebSocket");
        }else {
            let recvUserId = document.getElementById('recvUserId').value;
            let sendUserId = document.getElementById('sendUserId').value;
            let msg = document.getElementById('msg').value;
            let webSocketMessageDto = '{"recvUserId":"'+recvUserId+'","sendUserId":"'+sendUserId+'","message":"'+msg+'","messageEnum":"one"}';
            console.log(webSocketMessageDto);
            socket.send(webSocketMessageDto);
        }
    }
    function sendMessages() {
        if(typeof(WebSocket) == "undefined") {
            console.log("您的浏览器不支持WebSocket");
        }else {
            let msg = document.getElementById('msg').value;
            let sendUserId = document.getElementById('sendUserId').value;
            let webSocketMessageDto = '{"sendUserId":"'+sendUserId+'","message":"'+msg+'","messageEnum":"all"}';
            console.log(webSocketMessageDto);
            socket.send(webSocketMessageDto);
        }
    }

    </script>
</html>